/**
 * Copyright (c) 2020 ~ 2021 KylinSec Co., Ltd.
 * kiran-cc-daemon is licensed under Mulan PSL v2.
 * You can use this software according to the terms and conditions of the Mulan PSL v2.
 * You may obtain a copy of Mulan PSL v2 at:
 *          http://license.coscl.org.cn/MulanPSL2
 * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
 * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
 * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
 * See the Mulan PSL v2 for more details.
 *
 * Author:     tangjie02 <tangjie02@kylinos.com.cn>
 */

#pragma once

#ifdef __cplusplus
extern "C"
{
#endif

#define XSETTINGS_DBUS_NAME "com.kylinsec.Kiran.SessionDaemon.XSettings"
#define XSETTINGS_OBJECT_PATH "/com/kylinsec/Kiran/SessionDaemon/XSettings"
#define XSETTINGS_DBUS_INTERFACE_NAME "com.kylinsec.Kiran.SessionDaemon.XSettings"

#define XSETTINGS_SCHEMA_ID "com.kylinsec.kiran.xsettings"

#define XSETTINGS_SCHEMA_NET_DOUBLE_CLICK_TIME "netDoubleClickTime"
#define XSETTINGS_SCHEMA_NET_DOUBLE_CLICK_DISTANCE "netDoubleClickDistance"
#define XSETTINGS_SCHEMA_NET_DND_DRAG_THRESHOLD "netDndDragThreshold"
#define XSETTINGS_SCHEMA_NET_CURSOR_BLINK "netCursorBlink"
#define XSETTINGS_SCHEMA_NET_CURSOR_BLINK_TIME "netCursorBlinkTime"
#define XSETTINGS_SCHEMA_NET_THEME_NAME "netThemeName"
#define XSETTINGS_SCHEMA_NET_ICON_THEME_NAME "netIconThemeName"
#define XSETTINGS_SCHEMA_NET_ENABLE_EVENT_SOUNDS "netEnableEventSounds"
#define XSETTINGS_SCHEMA_NET_SOUND_THEME_NAME "netSoundThemeName"
#define XSETTINGS_SCHEMA_NET_ENABLE_INPUT_FEEDBACK_SOUNDS "netEnableInputFeedbackSounds"

#define XSETTINGS_SCHEMA_XFT_ANTIALIAS "xftAntialias"
#define XSETTINGS_SCHEMA_XFT_HINTING "xftHinting"
#define XSETTINGS_SCHEMA_XFT_HINT_STYLE "xftHintStyle"
#define XSETTINGS_SCHEMA_XFT_RGBA "xftRgba"
#define XSETTINGS_SCHEMA_XFT_DPI "xftDpi"
#define XSETTINGS_SCHEMA_FONT_DPI "fontDpi"

#define XSETTINGS_SCHEMA_GTK_CURSOR_THEME_NAME "gtkCursorThemeName"
#define XSETTINGS_SCHEMA_GTK_CURSOR_THEME_SIZE "gtkCursorThemeSize"
#define XSETTINGS_SCHEMA_GTK_FONT_NAME "gtkFontName"
#define XSETTINGS_SCHEMA_GTK_KEY_THEME_NAME "gtkKeyThemeName"
#define XSETTINGS_SCHEMA_GTK_TOOLBAR_STYLE "gtkToolbarStyle"
#define XSETTINGS_SCHEMA_GTK_TOOLBAR_ICONS_SIZE "gtkToolbarIconsSize"
#define XSETTINGS_SCHEMA_GTK_IM_PREEDIT_STYLE "gtkImPreeditStyle"
#define XSETTINGS_SCHEMA_GTK_IM_STATUS_STYLE "gtkImStatusStyle"
#define XSETTINGS_SCHEMA_GTK_IM_MODULE "gtkImModule"
#define XSETTINGS_SCHEMA_GTK_MENU_IMAGES "gtkMenuImages"
#define XSETTINGS_SCHEMA_GTK_BUTTON_IMAGES "gtkButtonImages"
#define XSETTINGS_SCHEMA_GTK_MENUBAR_ACCEL "gtkMenubarAccel"
#define XSETTINGS_SCHEMA_GTK_COLOR_SCHEME "gtkColorScheme"
#define XSETTINGS_SCHEMA_GTK_FILE_CHOOSER_BACKEND "gtkFileChooserBackend"
#define XSETTINGS_SCHEMA_GTK_DECORATION_LAYOUT "gtkDecorationLayout"
#define XSETTINGS_SCHEMA_GTK_SHELL_SHOWS_APP_MENU "gtkShellShowsAppMenu"
#define XSETTINGS_SCHEMA_GTK_SHELL_SHOWS_MENUBAR "gtkShellShowsMenubar"
#define XSETTINGS_SCHEMA_GTK_SHOW_INPUT_METHOD_MENU "gtkShowInputMethodMenu"
#define XSETTINGS_SCHEMA_GTK_SHOW_UNICODE_MENU "gtkShowUnicodeMenu"
#define XSETTINGS_SCHEMA_GTK_AUTOMATIC_MNEMONICS "gtkAutomaticMnemonics"
#define XSETTINGS_SCHEMA_GTK_ENABLE_PRIMARY_PASTE "gtkEnablePrimaryPaste"
#define XSETTINGS_SCHEMA_GTK_ENABLE_ANIMATIONS "gtkEnableAnimations"
#define XSETTINGS_SCHEMA_GTK_DIALOGS_USE_HEADER "gtkDialogsUseHeader"
#define XSETTINGS_SCHEMA_WINDOW_SCALING_FACTOR "windowScalingFactor"
#define XSETTINGS_SCHEMA_WINDOW_SCALING_FACTOR_QT_SYNC "windowScalingFactorQtSync"

#define XSETTINGS_REGISTRY_PROP_NET_DOUBLE_CLICK_TIME "Net/DoubleClickTime"
#define XSETTINGS_REGISTRY_PROP_NET_DOUBLE_CLICK_DISTANCE "Net/DoubleClickDistance"
#define XSETTINGS_REGISTRY_PROP_NET_DND_DRAG_THRESHOLD "Net/DndDragThreshold"
#define XSETTINGS_REGISTRY_PROP_NET_CURSOR_BLINK "Net/CursorBlink"
#define XSETTINGS_REGISTRY_PROP_NET_CURSOR_BLINK_TIME "Net/CursorBlinkTime"
#define XSETTINGS_REGISTRY_PROP_NET_THEME_NAME "Net/ThemeName"
#define XSETTINGS_REGISTRY_PROP_NET_ICON_THEME_NAME "Net/IconThemeName"
#define XSETTINGS_REGISTRY_PROP_NET_ENABLE_EVENT_SOUNDS "Net/EnableEventSounds"
#define XSETTINGS_REGISTRY_PROP_NET_SOUND_THEME_NAME "Net/SoundThemeName"
#define XSETTINGS_REGISTRY_PROP_NET_ENABLE_INPUT_FEEDBACK_SOUNDS "Net/EnableInputFeedbackSounds"
#define XSETTINGS_REGISTRY_PROP_NET_FALLBACK_ICON_THEME "Net/FallbackIconTheme"
#define XSETTINGS_REGISTRY_PROP_XFT_ANTIALIAS "Xft/Antialias"
#define XSETTINGS_REGISTRY_PROP_XFT_HINTING "Xft/Hinting"
#define XSETTINGS_REGISTRY_PROP_XFT_HINT_STYLE "Xft/HintStyle"
#define XSETTINGS_REGISTRY_PROP_XFT_RGBA "Xft/RGBA"
#define XSETTINGS_REGISTRY_PROP_XFT_DPI "Xft/DPI"
#define XSETTINGS_REGISTRY_PROP_XFT_LCDFILTER "Xft/lcdfilter"
#define XSETTINGS_REGISTRY_PROP_GTK_CURSOR_THEME_NAME "Gtk/CursorThemeName"
#define XSETTINGS_REGISTRY_PROP_GTK_CURSOR_THEME_SIZE "Gtk/CursorThemeSize"
#define XSETTINGS_REGISTRY_PROP_GTK_FONT_NAME "Gtk/FontName"
#define XSETTINGS_REGISTRY_PROP_GTK_KEY_THEME_NAME "Gtk/KeyThemeName"
#define XSETTINGS_REGISTRY_PROP_GTK_TOOLBAR_STYLE "Gtk/ToolbarStyle"
#define XSETTINGS_REGISTRY_PROP_GTK_TOOLBAR_ICON_SIZE "Gtk/ToolbarIconSize"
#define XSETTINGS_REGISTRY_PROP_GTK_IM_PREEDIT_STYLE "Gtk/IMPreeditStyle"
#define XSETTINGS_REGISTRY_PROP_GTK_IM_STATUS_STYLE "Gtk/IMStatusStyle"
#define XSETTINGS_REGISTRY_PROP_GTK_IM_MODULE "Gtk/IMModule"
#define XSETTINGS_REGISTRY_PROP_GTK_MENU_IMAGES "Gtk/MenuImages"
#define XSETTINGS_REGISTRY_PROP_GTK_BUTTON_IMAGES "Gtk/ButtonImages"
#define XSETTINGS_REGISTRY_PROP_GTK_MENU_BAR_ACCEL "Gtk/MenuBarAccel"
#define XSETTINGS_REGISTRY_PROP_GTK_COLOR_SCHEME "Gtk/ColorScheme"
#define XSETTINGS_REGISTRY_PROP_GTK_FILE_CHOOSER_BACKEND "Gtk/FileChooserBackend"
#define XSETTINGS_REGISTRY_PROP_GTK_DECORATION_LAYOUT "Gtk/DecorationLayout"
#define XSETTINGS_REGISTRY_PROP_GTK_SHELL_SHOWS_APP_MENU "Gtk/ShellShowsAppMenu"
#define XSETTINGS_REGISTRY_PROP_GTK_SHELL_SHOWS_MENUBAR "Gtk/ShellShowsMenubar"
#define XSETTINGS_REGISTRY_PROP_GTK_SHOW_INPUT_METHOD_MENU "Gtk/ShowInputMethodMenu"
#define XSETTINGS_REGISTRY_PROP_GTK_SHOW_UNICODE_MENU "Gtk/ShowUnicodeMenu"
#define XSETTINGS_REGISTRY_PROP_GTK_AUTO_MNEMONICS "Gtk/AutoMnemonics"
#define XSETTINGS_REGISTRY_PROP_GTK_ENABLE_PRIMARY_PASTE "Gtk/EnablePrimaryPaste"
#define XSETTINGS_REGISTRY_PROP_GTK_ENABLE_ANIMATIONS "Gtk/EnableAnimations"
#define XSETTINGS_REGISTRY_PROP_GTK_DIALOGS_USE_HEADER "Gtk/DialogsUseHeader"
#define XSETTINGS_REGISTRY_PROP_GDK_WINDOW_SCALING_FACTOR "Gdk/WindowScalingFactor"
#define XSETTINGS_REGISTRY_PROP_GDK_UNSCALED_DPI "Gdk/UnscaledDPI"
#define XSETTINGS_REGISTRY_PROP_FONTCONFIG_TIMESTAMP "Fontconfig/Timestamp"

#ifdef __cplusplus
}
#endif
